home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / AMIGA / (A)Z / (A)Z8.ADF / YaboingII / yb2.h < prev    next >
C/C++ Source or Header  |  1988-01-05  |  2KB  |  77 lines

  1. /* yb2.h (c)1988 Ali T. Ozer
  2. ** The header file for YaBoing II.
  3. ** Freely distributable
  4. */
  5.  
  6. /* Tech Notes: 
  7. ** YaBoing II was developed with Manx 3.40b. 
  8. ** When linking, you'll get warnings about _wb_parse and _cli_parse being
  9. ** redefined. Please ignore these warnings. Also, make sure you link with
  10. ** the "+cd" option so that the static sprite images go into CHIP memory.
  11. */
  12.  
  13. #include <exec/types.h>
  14. #include <exec/memory.h>
  15. #include <intuition/intuition.h>
  16. #include <graphics/sprite.h>
  17. #include <graphics/gfxbase.h>
  18. #include <hardware/custom.h>
  19. #include <functions.h>
  20.  
  21. #define true  1
  22. #define false 0
  23.  
  24. #define COPYRIGHT "YaBoing II (C)1988 Ali T. Ozer  (Ali@score.stanford.edu)"
  25.  
  26. struct sprrec {
  27.   struct SimpleSprite actualsprite;
  28.   unsigned short *sprmem;    /* Pointer to chip memory reserved for image */
  29.   int vx, vy, ax, ay, px, py, mode, value, type;
  30.   unsigned long lastchange;  /* Time at which sprite last changed */
  31. };
  32.  
  33. /* For convenience sake --- We usually use spr as sprrec pointer.
  34. */
  35. #define PX      (spr->px)
  36. #define PY      (spr->py)
  37. #define AX      (spr->ax)
  38. #define AY      (spr->ay)
  39. #define VX      (spr->vx)
  40. #define VY      (spr->vy)
  41. #define VAL     (spr->value)
  42. #define MODE    (spr->mode)
  43. #define TYPE    (spr->type)
  44. #define SPRMEM  (spr->sprmem)
  45. #define CHANGE  (spr->lastchange)
  46.  
  47. /* Modes */
  48. #define SPRITEALIVE 0
  49. #define SPRITEHIT1  1
  50. #define SPRITEHIT2  2
  51. #define SPRITEDEAD  3
  52.  
  53. /* Types */
  54. #define NUMSPRITE   1
  55. #define OPSPRITE    2
  56.  
  57. /* Values */
  58. #define DIGITVALUE  0
  59. #define DIGITVALUES 10
  60. #define OPVALUE     10
  61. #define OPVALUES    7
  62. #define OPADD 10
  63. #define OPPOP 11
  64. #define OPMUL 12
  65. #define OPDIV 13
  66. #define OPSWP 14
  67. #define OPSUB 15
  68. #define OPCHK 16
  69.  
  70. /* Default values for the YaBoing window.
  71. */
  72. #define WINDOWX 25
  73. #define WINDOWY 25
  74. #define WINDOWWIDTH  168
  75. #define WINDOWHEIGHT 54
  76.  
  77.